//
// Created by denglibin on 2019/7/10 0010.
//
/****随机数算法********/

#include <stdio.h>

/**
 * 随机生成一个0-1之间的数
 * @param r 种子数
 * @return
 */
static double randomDouble(double *r){
    double base = 256; //基数
    double u = 17.0; //随意数
    double v = 139.0; //随意数
    double temp1 = u * (*r) + v;
    double temp2 = temp1 / base;//商
    double temp3 = temp1 - temp2 * base;//得到temp1对base的余数
    *r = temp3;//修改种子数
    return temp3 / base;//返回
}

int main6(){
    double r = 20;
    for(int i = 0; i < 10; i++){
        printf("%f\n", randomDouble(&r));
    }
    return 0;
}